const state = {
	// { id: 商品id, count: 购买数量，selected: false  }
	car: getItem('car'),
	// 当前要购买的商品：buy: [{ id: '', count: '' }]
	// 当在购物车里点“去结算”时，就把购物车车中已经选中的商品放进去
	buy: getItem('buy')
}
const getters = {
	//获取商品数量
	getGoodsCount(state){
		var goods={}
		state.car.forEach(item=>{
			goods[item.id]=item.count
		})
		return goods
	},
	//获取商品有没有选中的状态值(selected)
	getGoodsSelected(state){
		var goods={}
		state.car.forEach(item=>{
			goods[item.id]=item.selected
		})
		return goods
	},
  // 获取选中的商品的件数
  getSelectedCount (state) {
    var count = 0
    state.car.forEach(item => {
      if (item.selected) {
        count += item.count
      }
    })
    return count
  },
  // 获取选中的商品
  getSelectedGoods (state) {
    var goods = {}
    state.car.forEach(item => {
      if (item.selected) {
        goods[item.id] = item
      }
    })
    return goods
  },
  // 获取要购买的商品
  getBuy (state) {
    var goods = {}
    state.buy.forEach(item => {
      goods[item.id] = item
    })
    return goods
  }
}
const actions = {}
const mutations = {
	 addCar (state, goodsinfo) {
	    var flag = false
	    state.car.some(item => {
	      if (item.id == goodsinfo.id) {
	        item.count += parseInt(goodsinfo.count)
	        flag = true
	        return true
	      }
	    })
	    if (!flag) {
	      state.car.push(goodsinfo)
	    }
	  }
}
function setItem(name, item) {
  localStorage.setItem(name, JSON.stringify(item))
}
function getItem(name) {
  return JSON.parse(localStorage.getItem(name) || '[]')
}
export default {
	namespaced: true,
	state,
	getters,
	actions,
	mutations
}
